package me.flyray.bsin.infrastructure.biz.paychannel.joinpay.domain.request;

import com.fasterxml.jackson.annotation.JsonProperty;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Size;
import lombok.*;

/**
 * 汇聚支付 API - 订单查询请求实体类
 * <p>
 *
 * @author Gemini
 */
@EqualsAndHashCode(callSuper = true)
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class OrderQueryRequest extends BaseRequest{

    /**
     * 商户订单号
     * <ul>
     * <li><b>说明:</b> 商户系统提交的唯一订单号。</li>
     * <li><b>必填:</b> 是</li>
     * <li><b>长度:</b> X(50)</li>
     * </ul>
     */
    @NotBlank(message = "商户订单号 (orderNo) 不能为空")
    @Size(max = 50, message = "商户订单号长度不能超过50")
    @JsonProperty("p2_OrderNo")
    private String orderNo;

}
